home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / graphics / aim_xtra.arc / DEMOSCH.AIM < prev    next >
Text File  |  1988-08-17  |  4KB  |  127 lines

  1. * Analysis of electronic scheme 
  2. * by Cellular Logic Operations 
  3. * Frans Groen TU-Delft
  4. *
  5. @CORSHA     * correct the image for shading
  6. doff        * display off
  7. bcop 1,8    * copy the thresholded image
  8. bcop 1,6    * original in green
  9. inv 6       * after inversion
  10. *
  11. * separation of drawing and text
  12. *
  13. *
  14. * fill small holes
  15. bcop 8,7,B,B       * copy bitplane
  16. don
  17. erosion 1,8,4,0,B  * erode small holes away
  18. prop 511,8,7,8,0,B * propagate for what remains
  19. inv 8              * cleaned drawing in red
  20. don,4              * multi-bitplane display on
  21. bcopy 8,5,B,B      * save original in b5
  22. doff               * display off
  23. *
  24. * make skeleton
  25. skelet 511,8,1,B   * skeleton in b8
  26. don                * single bitplane display
  27. bcopy 8,4          * save skeleton in b4
  28. *
  29. * shave skeleton
  30. bcopy 8,7,B,B       * copy in b7
  31. -skelet 16,7,1,B    * remove strokes of length 16
  32. exor 8,7,7,B        * find strokes
  33. vertices 8,0,B      * vertices in bitplane 3
  34. dilation 1,8,8,0,B  * enlarge vertices
  35. propag 511,8,7,8,0,B * propagate vertices in strokes
  36. exor 4,8,8,B        * cleaned object in b8
  37. bcopy 8,4           * save in b4
  38. *
  39. * separate text based upon vertices in 
  40. * the skeleton with removed strokes
  41. bcopy 8,7            * copy for propagation mask
  42. vertices 8,0,B       * find vertices
  43. propag 511,8,7,8,0,B * propagate vertices in skeleton
  44. bcop 8,4,B,B         * save cleaned skeleton in b4
  45. propag 511,8,5,8,0,B * propagate skeleton in drawing
  46. doff                 * display off
  47. reset 7              * reset for display
  48. don,4                * multi-bitplane display 
  49. bcop 8,5             * save original in b5
  50. *doff                 * display off 
  51. *
  52. *analyse objects
  53. *capacitors : big objects
  54. bcop 5,6            * original in b8
  55. ero 4,6,4           * find capacitors
  56. prop 4,6,5,8,0,B    * propagate back
  57. *  capacitors in b6
  58. *resistors : objects enclosing small holes
  59. don,4
  60. inv 5,B             * invert
  61. bcop 5,7            * original in b7
  62. ero 5,7             * erode 5 times
  63. propag 511,7,5,8,0,B * find what remains
  64. exor 5,7,7,B        * find what disappears
  65. *  resistors in b7
  66. * opamps
  67. bcop 5,8
  68. erosion 7,8,8,0,B   * erode 7 times
  69. propag 511,8,5,8,0,B * find what remains
  70. exor 5,8,8,B        * and what disappears
  71. exor 7,8,8,B        * removes the resistors
  72. doff
  73. *  opamps in b8
  74. * finds location of components in scheme
  75. *   extend opamps
  76. dilation 2,8,6,0,B * extend opamps  
  77. bcopy 8,1,B,B      * save seed bitplane
  78. propag 3,8,4,6,0,B * propagate in skeleton
  79. or 1,8,8,B         * or seed bitplane
  80. bcopy 8,1,B,B      * opamps in b1
  81. * extend resistors
  82. dilation 2,7,6,0,B * extend resistors
  83. bcopy 7,2,B,B      * save seed bitplane
  84. propag 3,7,4,6,0,B * propagate in skeleton
  85. or 2,7,7,B         * or seed bitplane
  86. bcopy 7,2,B,B      * resistors in b2
  87. * extend capacitors
  88. bcopy 6,3,B,B      * save seed bitplane
  89. propag 3,6,4,6,0,B * propagate capacitors in skeleton
  90. or 3,6,6,B         * or seed bitplane
  91. don,4              * multi-bitplane display on
  92. bcopy 6,3,B,B      * capacitors in b3
  93. * determine endpoints and branchpoints
  94. * find scheme without components
  95. bcop 4,8         * get cleaned drawing (b4)
  96. inv 8            * invert
  97. or 1,8,8         * get rid of opamps
  98. or 2,8,8         * resistors
  99. or 3,8,8         * capacitors
  100. inv 8            * drawing without components
  101. bcopy 8,6        * copy in b6 for vertices
  102. bcopy 8,7        * copy in b7 for endpixels
  103. * find endpixels of the components
  104. endpix 7,0,B     * find endpixels
  105. dilation 2,7,6,0,B * extend endpixels
  106. * find vertices
  107. vertices 6,0,B
  108. dilation 2,6,6,0,B
  109. *
  110. * color assignment
  111. * lines    : grey    resistors  : blue
  112. * endpixels: yellow  capacitors : green
  113. * vertices : purple  opamps     : red
  114. *dilate lines because of low_res display
  115. dilation 1,8,6,0,B
  116. or 6,8,8
  117. or 7,8,8           * lines    : grey   876.....
  118. exor 8,6,6         * vertices : purple 87......
  119. exor 8,7,7         * endpixels: yellow 8.6.....
  120. * insert components
  121. or 1,8,8           * opamps   : red    8......1
  122. or 2,7,7           * resistors: blue   .7....2.
  123. or 3,6,6           * capacitors: green ..6..3..
  124.  
  125.             
  126.